www.gusucode.com > matlab用户界面的卡尔曼滤波程序 > Kalman filter_GUI\m_files\fromfile_callback.m
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % not used in stand-alone exe file % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function fromfile_callback [fname,pname]=uigetfile('*.txt','Initialize From File'); if ~fname return end s='warndlg(''Cannot Load File:File Format Wrong'',''Warning'');return'; %eval('load([pname,fname]);',s); tname=[[pname] [fname]] %load(tname); %load('example.txt'); F=@load; feval(F,tname); for i=1:length(fname) if fname(i)=='.' break; end name(i)=fname(i); end n=eval([name,'(1,1)'],s); p=eval([name,'(2,1)'],s); m=eval([name,'(3,1)'],s); A=eval([name,'(4:3+n,1:n)'],s); B=eval([name,'(n+4:2*n+3,1:p)'],s); H=eval([name,'(2*n+4:2*n+3+m,1:n)'],s); Q=eval([name,'(2*n+m+4:2*n+m+p+3,1:p)'],s); R=eval([name,'(2*n+m+4+p:2*n+2*m+3+p,1:m)'],s); P0=eval([name,'(2*n+2*m+4+p:3*n+2*m+3+p,1:n)'],s); X0=eval([name,'(3*n+2*m+4+p:4*n+2*m+3+p,1)'],s); save inidata A B H Q R P0 X0; CI=findobj(gcf,'tag','compo1'); set(CI,'userdata',[]);